package com.example.design.patterns.冰河.行为模式.备忘录模式.originator;

import com.example.design.patterns.冰河.行为模式.备忘录模式.memento.Memento;
import lombok.Data;

/**
 * Originator 原发器创建一个备忘录,用于记录当前时刻它的内部状态.使用备忘录恢复内部状态
 */
@Data
public class Originator {
    private String state;

    public Memento createMemento() {
        return new Memento(state);
    }

    public void setMemento(Memento memento) {
        this.state = memento.getState();
    }

    public void showState() {
        System.out.println(this.state);
    }
}
